package com.tianruan.dc.modules.userinfo.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.tianruan.dc.modules.sys.user.entity.db.RoleDO;
import lombok.Data;
import org.springframework.web.multipart.MultipartFile;

import javax.validation.constraints.*;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;

/**
 * 学生实体类
 */
@Data
@TableName("t_sys_user_info")
public class User {
    //主键
    private String id;
    //用户Id
    private String userId;
    //个人照片
    private String image;
    //账号（学号/工号）
    private String userName;
    //角色类型（0为导师，1为学生）
    private String type;
    //姓名
    private String name;
    //用户年龄
    @Min(value = 0, message = "年龄不能为负数")
    @Max(value = 150, message = "年龄不能超过150岁")
    private String age;
    //电话号码
    @Pattern(regexp="^1[0-9]{10}$", message="电话号码格式不正确")
    private String phone;
    //邮箱
    @Email(message="邮箱格式不正确")
    private String email;
    //技能特长
    private String skills;
    //爱好
    private String hobby;
    //获得的荣誉
    private String honor;
    //与创业或创新相关的经历和成果
    private String innovationExp;
    //学院(stu)
    private String officeId;
    //专业
    private String major;
    //入学年份
    private String enrollmentYear;
    //毕业院校(teacher)
    private String college;
    //从事行业
    private String job;
    //职位
    private String post;
    //工作经验
    private String workExp;
    //擅长邻域
    private String excelField;
    //每一个User_id所对应的项目集合
//    private List<Project> projectList= new ArrayList<>();
    //创建者
    private String createBy;
    //创建时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createDate;
    //更新者
    private String updateBy;
    //更新时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateDate;
    //备注信息
    private String remarks;
    //删除标记
    private String delFlag;

    //微信code
    private String code;

    //密码
    private String password;

    //用户名
    private String no;

    //使用状态 0表示未启用 1表示启用
    private String status;


}
